by William Harrington
The purpose of this document is to examine the output power capability of the power amplifier chosen by the Sputnik team for their module.
In [146]:
import numpy as np
import matplotlib.pylab as plt
%matplotlib inline
from IPython.display import set_matplotlib_formats
# Graphing helper function
def setup_graph(title='', x_label='', y_label='', fig_size=None):
fig = plt.figure()
if fig_size != None:
fig.set_size_inches(fig_size[0], fig_size[1])
ax = fig.add_subplot(111)
ax.set_title(title)
ax.set_xlabel(x_label)
ax.set_ylabel(y_label)
In [147]:
# read the data
columns = np.loadtxt('RFPAtest.csv',
dtype=float,
delimiter=',',
unpack=True)
current = columns[0]
temp = columns[1]
input_power = columns[2]
output_power = columns[5]
In [148]:
setup_graph('Current vs. Output Power',
'Current (Amps)',
r'Output Power $(dBm)$',
(9,6.5))
plt.plot(current, output_power)
plt.show()
In [149]:
setup_graph('Current vs. Input Power',
'Current (Amps)',
r'Input Power $(dBm)$',
(9,6.5))
plt.plot(current, input_power)
plt.show()
In [150]:
setup_graph('Current vs. Temperature',
'Current (Amps)',
r'Temp $(\,^{\circ}\mathrm{C})$',
(9,6.5))
plt.plot(current, temp)
plt.show()
In [151]:
# read the data
columns = np.loadtxt('KW0xPAtest.csv',
dtype=float,
delimiter=',',
unpack=True)
current = columns[0]
temp = columns[1]
input_power = columns[2]
output_power = columns[5]
second_harm = columns[6]
In [152]:
setup_graph('Current vs. Output Power',
'Current (Amps)',
r'Output Power $(dBm)$',
(9,6.5))
plt.plot(current, output_power)
plt.show()
In [153]:
setup_graph('Current vs. Input Power',
'Current (Amps)',
r'Input Power $(dBm)$',
(9,6.5))
plt.plot(current, input_power)
plt.show()
In [154]:
setup_graph('Current vs. Temperature',
'Current (Amps)',
r'Temp $(\,^{\circ}\mathrm{C})$',
(9,6.5))
plt.plot(current, temp)
plt.show()
In [155]:
setup_graph('Input Power vs. Output Power',
'Input (dBm)',
'Output (dBm)',
(9,6.5))
plt.plot(input_power, output_power)
plt.show()
In [156]:
# get rid of 0 measurements
second_harm = second_harm[4:]
input_power = input_power[4:]
setup_graph('Input Power vs. 2nd Harmonic',
r'Input Power $(dBm)$',
r'2nd Harmonic $(dBm)$',
(9,6.5))
plt.plot(input_power, second_harm)
plt.show()
In [157]:
output_power = output_power[4:]
delta = []
for i in range(len(output_power)):
delta.append(output_power[i]-second_harm[i])
setup_graph('Output Power vs. Output Power - 2nd Harmonic',
r'Output Power $(dBm)$',
r'Output Power - 2nd Harmonic $(dBm)$',
(9,6.5))
plt.plot(output_power, delta)
plt.show()